The Direct Binary Search (DBS) algorithm is an iterative/recursive search heuristic that uses a perceptual filter, such as a Human Visual System (HVS) model, to minimize a perceived difference (error (ε)) between a continuous tone image and its corresponding halftone image. Thus, the DBS algorithm is typically used to generate halftone images that are visually pleasing to humans.
However, the DBS algorithm is a complex and computational expensive algorithm. Due to the computational complexity of the algorithm, its application has been limited to trial changes to either single toggle or single swap operations. Yet there are some instances in which multiple toggles (e.g., n>2) are necessary. An example of this is the case in which a constraint for the pattern is to ensure only one dot per column. Applications for this type of mask include ink jet flushing masks used to ensure each nozzle is fired over the size of the mask to prevent clogging of the nozzle.
Accordingly, an algorithm that features multiple trial operations in order to generate a human visual pleasing mask having specific constraints is desired.